package com.tsyz.servlet.context;

import com.tsyz.servlet.domain.dto.UserDTO;

/**
 * 用户上下文持有者，使用ThreadLocal存储当前用户信息
 *
 * @author ext.zhaoke14
 */
public class UserContextHolder {

    private static final ThreadLocal<UserDTO> USER_HOLDER = new ThreadLocal<>();

    /**
     * 设置当前用户
     */
    public static void setUser(UserDTO userDTO) {
        USER_HOLDER.set(userDTO);
    }

    /**
     * 获取当前用户
     */
    public static UserDTO getCurrentUser() {
        return USER_HOLDER.get();
    }

    /**
     * 清除当前用户信息
     */
    public static void clear() {
        USER_HOLDER.remove();
    }
}
